package com.pactera.madp.cp.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pactera.madp.cp.api.dto.workcontacttag.WorkContactTagGroupAddDTO;
import com.pactera.madp.cp.api.dto.workcontacttag.WorkContactTagGroupUpdateDTO;
import com.pactera.madp.cp.api.entity.WorkContactTagGroupEntity;
import com.pactera.madp.cp.api.vo.ContactTagGroupPageVO;
import com.pactera.madp.cp.api.vo.contact.ContactTagGroupIndexVO;

import java.util.List;

/**
 * @author: yangpengwei
 * @time: 2020/12/14 5:32 下午
 * @description 客户标签组 service
 */
public interface IWorkContactTagGroupService extends IService<WorkContactTagGroupEntity> {

    /**
     * 获取标签组列表
     * @param page
     * @return
     */
    Page<List<ContactTagGroupPageVO>> getGroupList(Page page);

    List<ContactTagGroupIndexVO> getIndexList();

    List<ContactTagGroupIndexVO> getIndexListWeChat( Integer corpId);

    /**
     * 获取标签组详情
     */
    ContactTagGroupPageVO getGroupDetail(Integer groupTagId);

    /**
     * 删除标签组
     */
    boolean deleteGroup(Integer groupTagId);

    /**
     * 创建标签组
     */
    boolean createGroup(WorkContactTagGroupAddDTO addDTO);

    /**
     * 更新标签组
     */
    boolean updateGroup(WorkContactTagGroupUpdateDTO updateDTO);

    void wxBackCreateTagGroup(int corpId, String wxTagGroupId);

    void wxBackUpdateTagGroup(int corpId, String wxTagGroupId);

    void wxBackDeleteTagGroup(int corpId, String wxTagGroupId);

}
